package com.soul.sys.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.soul.common.bean.vo.DictionaryVo;
import com.soul.sys.bean.dto.dict.DictAddDto;
import com.soul.sys.bean.dto.dict.DictSearchDto;
import com.soul.sys.bean.dto.dict.DictUpdateDto;
import com.soul.sys.bean.po.DictPo;
import com.soul.common.service.CommService;
import com.soul.sys.bean.vo.DictVo;

import java.util.Collection;
import java.util.List;

/**
 * <p>
 * 字典表 服务类
 * </p>
 *
 * @author sws
 * @since 2023-09-27 10:08:12
 */
public interface DictService extends CommService<DictPo> {

    List<DictPo> selectByTypeCode(String typeCode);

    IPage<DictVo> queryDictList(Integer currentPage, Integer size, DictSearchDto searchDto);

    DictVo getDictInfo(Long id);

    void addDict(DictAddDto addDto);

    void updateDict(DictUpdateDto updateDto);

    void deleteDict(Long id);

    List<DictVo> queryDictByTypeCode(String typeCode);

    List<DictionaryVo> queryDictList(Collection<String> dictTypes);
}
